| 간략한 설명 | |
|---|---|
|
파일: \examples\Processing\Geometry\ShearLine\LineShear_V02.va |
![]() |
|
Default Platform: mE5-MA-VCL |
|
|
요약 설명 선형 보간법을 사용하는 라인 시어(Line shear) 예제입니다. |
|
이 예제(\examples\Processing\Geometry\ShearLine\LineShear_V02.va)에서는 라인 스캔 카메라를 위한 라인 시어가 구현되어 있습니다. 카메라가 대상체의 의도된 스캔 방향을 따라 장착되지 않은 경우, 이 설계를 통해 스캔 대상체에서 발생하는 시프트 (그림 328 참조)를 보정할 수 있습니다. 이 예제에서는 전체 이미지 너비(여기서는 1024픽셀)에 걸쳐 y 방향으로 10픽셀의 라인 시프트가 선택되었습니다.
그림 329에서 기본 디자인 구조를 볼 수 있습니다. 카메라 오퍼레이터가 생성한 1D 이미지의 모든 픽셀은 HierarchicalBox LineShear 내에서 x 좌표에 따라 y 방향으로 시어링됩니다. 단일 라인들은 오퍼레이터 SplitImage:2DImage를 통해 2D 이미지로 조립됩니다. 보정된 이미지는 오퍼레이터 DmaToPC 를 통해 PC로 전송됩니다.
그림 330에서 HierarchicalBox LineShear의 내용을 볼 수 있습니다. 여기서는 모든 픽셀에 대해 이전의 N-1개 라인 이웃(여기서는 31개)이 Nx1 커널에 기록됩니다.
이 열의 각 8비트 픽셀은 (오퍼레이터 KernelRemap:ShiftedKernel을 통해 찾아낸) 바로 앞의 다음 이웃과 함께 하나의 16비트 픽셀로 병합됩니다. 그림 331의 HierarchicalBox ExtractInteger 내용을 참조하십시오. HierarchicalBox Select(그림 332 참조)에서는 시프트(보정)된 정수 y 위치에 따라 오퍼레이터 CASE를 사용하여 각 픽셀의 새로운 픽셀 값이 선택됩니다.
각 픽셀에 대한 보정된 y 위치는 HierarchicalBox TransformedYCoordinate에서 계산됩니다(그림 329 참조). 이 상자의 내용은 그림 333에 표시되어 있습니다.
오퍼레이터 Coordinate_X를 사용하여 각 픽셀의 x 위치를 얻습니다. 음수의 기울기(skew slope)에 대해 x 위치를 "반전"하는 기능이 존재합니다 (오퍼레이터 Const: NegativeSlope 및 IF를 사용하여 선택됨). 오퍼레이터 CONST: DeltaX를 통해 카메라의 정렬 불량이 정의됩니다. 이 상수는 몇 픽셀마다 y 방향으로 1픽셀 시프트가 수행될지를 결정합니다. 오퍼레이터 SelectBitField: Integer 및 SelectBitField: Fractional을 사용하여 모든 픽셀의 보정된 y 좌표의 정수부와 소수부가 분리됩니다. 이 예제에서는 6개의 소수부 비트 (오퍼레이터 ShiftLeft:Mult64 참조)가 결정됩니다. 각 y 좌표의 소수부는 상자 ExtractFractional에 포함된 HierarchicalBox Interpolation에서 수행되는 선형 보정에 필요합니다(그림 330 참조). 보안 알고리즘에 대한 자세한 정보는 예제의 HierarchicalBox Interpolation에 있는 주석에서 확인할 수 있습니다. 그림 334에서 설명된 작업의 결과로 보정된 이미지를 확인할 수 있습니다.



이전

